extract_diagonal Interface

public interface extract_diagonal

An interface to the diagonal extraction routines.


Module Procedures

private subroutine extract_diagonal_dbl(a, diag, err)

Extracts the diagonal of a matrix.

Arguments

Type IntentOptional Attributes Name
real(kind=real64), intent(in), dimension(:,:) :: a

The M-by-N matrix.

real(kind=real64), intent(out), dimension(:) :: diag

The MIN(M, N) element array for the diagonal elements.

class(errors), intent(inout), optional, target :: err

An error object to report any errors that occur.

private subroutine extract_diagonal_cmplx(a, diag, err)

Extracts the diagonal of a matrix.

Arguments

Type IntentOptional Attributes Name
complex(kind=real64), intent(in), dimension(:,:) :: a

The M-by-N matrix.

complex(kind=real64), intent(out), dimension(:) :: diag

The MIN(M, N) element array for the diagonal elements.

class(errors), intent(inout), optional, target :: err

An error object to report any errors that occur.

private subroutine extract_diagonal_csr(a, diag, err)

Extracts the diagonal of a matrix.

Arguments

Type IntentOptional Attributes Name
class(csr_matrix), intent(in) :: a

The M-by-N matrix.

real(kind=real64), intent(out), dimension(:) :: diag

The MIN(M, N) element array for the diagonal elements.

class(errors), intent(inout), optional, target :: err

An error object to report any errors that occur.